﻿Option Explicit On
Option Strict On

''' <summary>
''' Clase cliente: Para almacenar los datos de un cliente
''' </summary>
''' <author>Héctor Pastor</author>

Public Class Cliente
    'Atributos
    Private _codigo As Integer
    Private _DNI As String
    Private _telefono As String
    Private _Nombre As String
    Private _Apellidos As String
    Private _CuentaPendiente As Single
    Private _Email As String

    'Propiedades
    Public Property CuentaPendiente As Single
        Get
            Return _CuentaPendiente
        End Get
        Set(ByVal value As Single)
            _CuentaPendiente = value
        End Set
    End Property

    Public Property Email As String
        Get
            Return _Email
        End Get
        Set(ByVal value As String)
            _Email = value
        End Set
    End Property

    Public Property Codigo As Integer
        Get
            Return _codigo
        End Get
        Set(ByVal value As Integer)
            _codigo = value
        End Set
    End Property

    Public Property DNI As String
        Get
            Return _DNI
        End Get
        Set(ByVal value As String)
            _DNI = value
        End Set
    End Property

    Public Property Telefono As String
        Get
            Return _telefono
        End Get
        Set(ByVal value As String)
            _telefono = value
        End Set
    End Property

    Public Property Nombre As String
        Get
            Return _Nombre
        End Get
        Set(ByVal value As String)
            _Nombre = value
        End Set
    End Property

    Public Property Apellidos As String
        Get
            Return _Apellidos
        End Get
        Set(ByVal value As String)
            _Apellidos = value
        End Set
    End Property


    'Contructores
    Public Sub New()
        _codigo = 0
        _DNI = ""
        _telefono = ""
        _Nombre = ""
        _Apellidos = ""
        _CuentaPendiente = 0
        _Email = ""
    End Sub

    Public Sub New(ByVal nuevoCodigo As Integer, ByVal nuevoDNI As String, ByVal nuevoTelefono As String, _
                   ByVal nuevoNombre As String, ByVal nuevoApellido As String, ByVal nuevaDeuda As Single, _
                   ByVal nuevoEmail As String)
        _codigo = nuevoCodigo
        _DNI = nuevoDNI
        _telefono = nuevoTelefono
        _Nombre = nuevoNombre
        _Apellidos = nuevoApellido
        _CuentaPendiente = nuevaDeuda
        _Email = nuevoEmail
    End Sub

    'Destructores
    Public Sub Dispose()
        _codigo = 0
        _DNI = ""
        _telefono = ""
        _Nombre = ""
        _Apellidos = ""
        _CuentaPendiente = 0
        _Email = ""
    End Sub

    Protected Overrides Sub finalize()
        _codigo = 0
        _DNI = ""
        _telefono = ""
        _Nombre = ""
        _Apellidos = ""
        _CuentaPendiente = 0
        _Email = ""
    End Sub

    'Funciones

    'Procedimientos
End Class
